package com.itheima.多态.多态的使用场景;

/**
 * @Author 王加鑫
 * @Date 2021/5/9 10:47
 * @Version 1.0
 * 未来多态语法用的最多的就是在方法的参数和返回值类=类型上
 * 当方法的参数是一个父类型时,调用方法可以传递该父类的的任意子类对象
 * 当方法的参数是一个接口类型时,调用方法可以传递该接口的任意实现类对象
 *
 * 当方法的返回值类型是一个父类型时,方法中可以返回该父类的的任意子类对象
 * 当方法的返回值类型是一个接口类型时,方法中可以返回该接口类的的任意实现类对象
 */
public class Test1 {
    public static void main(String[] args) {
        method(new Zi1());
        method(new Zi2());
    }

    public static void method(Fu fu){
        fu.smoke();

    }

}

class Fu{
    public void smoke(){
        System.out.println("抽大前门");
    }
}

class Zi1 extends Fu{

    public void smoke(){
        System.out.println("抽华子");
    }
}

class Zi2 extends Fu{

    public void smoke(){
        System.out.println("抽金皖");
    }
}

